Skip to content

fix(scan): respect family-specific global-index search modes - #693

Merged
JingsongLi merged 1 commit into
apache:mainfrom
XiaoHongbo-Hope:codex/scalar-global-index-full
Aug 8, 2026
Merged

fix(scan): respect family-specific global-index search modes#693
JingsongLi merged 1 commit into
apache:mainfrom
XiaoHongbo-Hope:codex/scalar-global-index-full

Conversation

@XiaoHongbo-Hope

Copy link
Copy Markdown
Contributor

Purpose

Rust scans only honored the legacy global-index.search-mode option. Paimon's family-specific options therefore had no effect: for example, scalar-index.search-mode=full silently used FAST mode and could omit rows outside current scalar-index coverage.

Changes

  • Resolve scalar, vector, and full-text search modes with the family option taking precedence and global-index.search-mode remaining as the compatibility fallback.
  • Use the corresponding family mode in scalar scans, vector search, and full-text/hybrid search.
  • Add a scalar FULL regression that builds a BTree index, appends matching unindexed rows, and verifies both planning ranges and returned rows.
  • Exercise family-specific vector and full-text options in existing fallback tests.

Tests

  • cargo test -p paimon spec::core_options::tests -- --nocapture (66 passed)
  • cargo test -p paimon table::btree_global_index_build_builder::tests -- --nocapture (29 passed)
  • Targeted vector, full-text, and hybrid search-mode tests
  • cargo clippy -p paimon --all-targets --features fulltext -- -D warnings
  • cargo fmt --all -- --check
  • git diff --check

@XiaoHongbo-Hope
XiaoHongbo-Hope marked this pull request as ready for review August 8, 2026 09:36

@QuakeWang QuakeWang left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@JingsongLi

Copy link
Copy Markdown
Contributor

+1

@JingsongLi
JingsongLi merged commit 7a8512f into apache:main Aug 8, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants